import request from '../MainService'

/**
 * 服务配置类
 */
export interface IServiceConfig {
  /**
   * 主动呼叫编码（网络话筒）
   */
  defaultMic?: string;

  /**
   * 主动呼叫编码（网络话筒）
   */
  defaultVolume?: string;

  /**
   * ip地址
   */
  ipAddress?: string;

  /**
   * 密码
   */
  password?: string;

  /**
   * 文件共享路径
   */
  remotePath?: string;

  /**
   * 发送人
   */
  sendPerson?: string;

  /**
   * 发信端口
   */
  sendPort?: number;
}

/**
 * 服务配置接口类
 */
export default class ServiceConfigApi {
  /**
   * ip地址链接测试
   * @param ipAddress ip地址
   */
  public checkIp(ipAddress: string) {
    return request({
      url: "/service/config",
      method: "GET",
      params: {
        ipAddress
      }
    });
  }

  /**
   * 根据id获取服务配置类型
   * @param id 服务配置数据id
   */
  public getById(id: number) {
    return request({
      url: `/service/config/${id}`,
      method: "GET"
    });
  }

  /**
   * 根据id修改服务配置
   * @param id 服务配置数据id
   * @param data 服务配置数据
   */
  public putById(id: number, data: IServiceConfig) {
    return request({
      url: `/service/config/${id}`,
      method: "PUT",
      data
    });
  }
}